/**
   BasicHTTPClient.ino

    Created on: 24.05.2015

*/

#include <Arduino.h>

#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>

#include <ESP8266HTTPClient.h>

#include <WiFiClient.h>

ESP8266WiFiMulti WiFiMulti;
int button = 16; //D0
bool button_down = false; //按钮是否按下


#ifndef STASSID
#define STASSID "Xiaomi_2G_free" //你的wifi名称
#define STAPSK  ""  //你的wifi密码  我家没有密码所以没有了
#endif

const char* ssid = STASSID;
const char* password = STAPSK;


void setup() {
  pinMode (button , INPUT_PULLUP);
  Serial.begin(115200);
  // Serial.setDebugOutput(true);

  Serial.println();
  Serial.println();
  Serial.println();




}

void loop() {
  if (digitalRead(button) == 0) {
    button_down = true;
  }
  if (button_down == true) {
    button_down = false;
    WiFi.mode(WIFI_STA);
    WiFiMulti.addAP(ssid,  password);
    // wait for WiFi connection
    if ((WiFiMulti.run() == WL_CONNECTED)) {

      WiFiClient client;

      HTTPClient http;

      Serial.print("[HTTP] begin...\n");
      if (http.begin(client, "http://192.168.88.226/sw")) {  // 换成你们esp01s的地址


        Serial.print("[HTTP] GET...\n");
        // start connection and send HTTP header
        int httpCode = http.GET();

        // httpCode will be negative on error
        if (httpCode > 0) {
          // HTTP header has been send and Server response header has been handled
          Serial.printf("[HTTP] GET... code: %d\n", httpCode);

          // file found at server
          if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {
            String payload = http.getString();
            Serial.println(payload);
          }
        } else {
          Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
        }

        http.end();
      } else {
        Serial.printf("[HTTP} Unable to connect\n");
      }
    }
  }
  delay(10);
}